Repository navigation
Rollup of 11 pull requests - #165844
Merged
Merged
Rollup of 11 pull requests#165844
Conversation
(cherry picked from commit b791169)
LangItem might eventually be the type that forces us to support `#[derive(StableHash)]` for enums with more than 256 variants.
This commit also removes `#[derive(Hash)]` from the affected types, since it is no longer used. If these types need a plain Hash impl is needed in the future, it could potentially share the `stable_hash_inner` implementation.
By moving away from the old `impl_stable_traits_for_trivial_type!` macro, this commit has the side-effect of removing unused StableOrd impls for some types. Those impls could potentially be re-added if they are ever needed.
Add a test for a case that results in a recursive loop that runs until it runs out of memory or gets killed. This used to take a long time to compile because of nested recursion caused by dereferencing the type of the struct. Signed-off-by: Hardik Kumar <hardikxk@gmail.com>
This pulls some less-trivial changes out of the main migration to `Value<'ll>`.
derived impls kept the lifetime spans of the derive input so the external macro check missed them and `#[expect(redundant_lifetimes)]` on a derived struct went unfulfilled. the lint now skips items whose own span is in an external macro.
Just because the parser of a specific syntax fragment kind returns an `Err(_)` doesn't automatically mean that the problematic token sequence isn't "of" that fragment's kind. The token sequence might "almost" be of that kind (i.e., share a non-empty prefix) but simply contain a syntax error in it. On a side note, it's rather odd that the now removed `annotate_err_with_kind` only added the note "this macro call doesn't expand to a $fragkind" if the target fragment kind was *type* or *pat*, there are 20 kinds at the of writing.
…..)` This also means that it's now available under `core::pat` instead of `core` directly. This makes it consistent with the `std` re-export which is only available under `std::pat` and not under `std` directly. Moreover, drop library feature `pattern_type_macro` and demote language feature `pattern_types` to a library feature. This is nice because it means `std::pat::pattern_type` is no longer unnecessarily gated behind two (!) feature gates.
This also means that it's now available under `core::view` instead of `core` directly. This makes it consistent with the `std` re-export which is only available under `std::view` and not under `std` directly. Moreover, drop library feature `view_type_macro` and demote language feature `view_types` to a library feature. This is nice because it means `std::view::view_type` is no longer unnecessarily gated behind two (!) feature gates.
Co-authored-by: xkevio <xkeviota@gmail.com> style: use ecx stmt item method
cg_llvm: Use an invariant lifetime brand for LLVM values This PR changes the type of LLVM value references from `&'ll Value` to `Value<'ll>` with an invariant lifetime brand, to help uphold soundness of the FFI bindings. There should be no change to compiler output. --- Value is one of the more widely-used types, much more so than Type, so unfortunately this step ends up needing to touch quite a lot of code. Thankfully almost all of the changes are trivial.
…rk-Simulacrum Bump stage0 to 1.101.0-beta.1 https://forge.rust-lang.org/release/process.html#default-branch-bootstrap-update-and-crater-tuesday - run replace-version-placeholder (cherry-picked from beta) - bump stage0 to 1.101.0-beta.1 - update STAGE0_MISSING_TARGETS - reformat with `cfg_select!` awareness - update `cfg(bootstrap)`
Implement `core::ops::FnAddr` This implements `FnAddr` as proposed in rust-lang/libs-team#837 (comment). This is my first contribution to the rust compiler, so I'm not 100% familiar with the process. All code was hand written by me. cc rust-lang#148768
…syntax, r=mati865 Migrate built-in macros `pattern_type` & `view_type` to macros 2.0 that expand to internal syntax Part of MCP-approved rust-lang#110680. Best reviewed commit by commit. Please see individual commit messages for further details. Pinging owner of pattern types @oli-obk & owner of view types @scrabsha for visibility. <sub>(No LLM was or will be used by me during the entire creation process of this PR)</sub>
…ternal-macro, r=petrochenkov do not lint `redundant_lifetimes` on items from external macros derived impls copy the lifetime spans from the derive input so the external macro check on the lint span never fires and the lint is reported on the generated impl. that also left `#[expect(redundant_lifetimes)]` on a derived struct unfulfillable. now the lint skips items whose own span is in an external macro. fixes rust-lang#150553 as suggested in rust-lang#150553 (comment) r? @petrochenkov
feat: support nested functions with `#[offload_kernel]` Related to rust-lang#131513. Allows annotating nested functions with `#[offload_kernel]`, similar to autodiff. Also fixes the error message when `#[offload_kernel]` is used on anything other than functions. r? @ZuseZ4 (@Sa4dUs, ping)
This comment has been minimized.
This comment has been minimized.
Contributor
This was referenced Nov 12, 2026
Contributor
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing ee8268e (parent) -> 6b05f82 (this PR) Test differencesShow 291 test diffsStage 0
Stage 1
Stage 2
Additionally, 257 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 6b05f82b4f2d1309cdbddece388c9e4d26f481fc --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
This was referenced Nov 12, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Successful merges:
core::ops::FnAddr#165412 (Implementcore::ops::FnAddr)pattern_type&view_typeto macros 2.0 that expand to internal syntax #165487 (Migrate built-in macrospattern_type&view_typeto macros 2.0 that expand to internal syntax)redundant_lifetimeson items from external macros #165818 (do not lintredundant_lifetimeson items from external macros)#[offload_kernel]#163077 (feat: support nested functions with#[offload_kernel])explicit_outlives_requirementsto checked type aliases #164795 (Extend support of lintexplicit_outlives_requirementsto checked type aliases)Hash::hashwhen stable-hashing various types #165578 (AvoidHash::hashwhen stable-hashing various types)r? @ghost
Create a similar rollup